package com.restfb.example;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.List;

public class TareaCreacionCSVUsuarios 
{
	List<Usuario> usuarios;
	public TareaCreacionCSVUsuarios(List<Usuario> nUsuarios)
	{
		
		usuarios=nUsuarios;
			
	}
	
	public void execute()
	{
		try {
			PrintWriter pw=new PrintWriter(new File("./data/usuarios.csv"));
			//Iprimir encabezados
			pw.println("usuario_id_facebook,usuario_nombre,usuario_login,usuario_fecha_nacimiento,usuario_ciudad_actual,usuario_pais_actual,usuario_ciudad_origen,usuario_pais_origen,usuario_estado_civil,usuario_religion,usuario_filacion_politica,usuario_musica_favorita,usuario_tv_favorito,usuario_libro_favorito");
			for (Usuario cl : usuarios)
			 {
				String origen=cl.hometown_location;
				String actual=cl.current_location;
				String ciudadOrigen="";
				String ciudadActual="";
				String paisOrigen="";
				String paisActual="";
				if(origen!=null&&!origen.equals(""))
				{
					
					String[] split=origen.split(",");
				for (int i = 0; i < split.length; i++) 
				{
					String temp=split[i];
					
					if(temp.contains("city"))
					{
					ciudadOrigen=temp.split(":")[1].substring(1,temp.split(":")[1].length()-1);
					}
					if(temp.contains("country"))
					{
					paisOrigen=temp.split(":")[1].substring(1,temp.split(":")[1].length()-2);
					}
				}
					
					
						
				}
				if(actual!=null&&!actual.equals(""))
				{
					String[] split=actual.split(",");
					
					for (int i = 0; i < split.length; i++) 
					{
						String temp=split[i];
						
						if(temp.contains("city"))
						{
						ciudadActual=temp.split(":")[1].substring(1,temp.split(":")[1].length()-1);
						}
						if(temp.contains("country"))
						{
						paisActual=temp.split(":")[1].substring(1,temp.split(":")[1].length()-2);
						}
					
					
					
					 
					 
					} 
					 
					 
					 
				}
				
				if(cl.music!=null)
				{
					cl.music=cl.music.replace(",","-");
				}
				if(cl.tv!=null)
				{
					cl.tv=cl.tv.replace(",", "-");
				}
				if(cl.books!=null)
				{
					cl.books=cl.books.replace(",","-") ;
				}
				pw.println(cl.uid+"," +cl.name+"," +cl.username +"," +cl.birthday_date+"," +ciudadActual+"," +paisActual+"," +ciudadOrigen+"," +paisOrigen+"," +cl.relationship_status+"," +cl.religion+"," +cl.political+"," +cl.music+"," +cl.tv+"," +cl.books );
				
			 }
			
			pw.close();
			
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			System.err.println("Error guardando el archivo csv");
			e.printStackTrace();
		}
		
		
		 
	  	    	
	}
	
	
}
